ECS クラスターに EC2 インスタンスを登録できない理由を教えてください
困っていた内容
ECS クラスターに EC2 インスタンスを登録しようと試みていますが何らかのエラーにより登録することができません。
何か設定が不足しているのでしょうか。
もし不足している設定内容があれば教えてください。
どう対応すればいいの?
事象の切り分け方法の1つとして、当該事象発生時の CloudTrail のログをご確認ください。
例えば、以下の CloudTrail のログの場合、ecs:RegisterContainerInstance の IAM アクセス許可(権限)が不足しているエラーメッセージであることが確認できます。
"errorMessage": "User: arn:aws:sts::123456789012:assumed-role/ecsInstanceRole/i-012a34bc567def8gh is not authorized to perform: ecs:RegisterContainerInstance on resource: arn:aws:ecs:ap-northeast-1:123456789012:cluster/ecsCluster because no identity-based policy allows the ecs:RegisterContainerInstance action"
参考資料
- RegisterContainerInstance - Amazon Elastic Container Service
Registers an EC2 instance into the specified cluster.
- ECS または EC2 インスタンスがクラスターに参加できない理由のトラブルシューティング
エラー: ECS でコンテナインスタンスとして登録できません: AccessDeniedException: User: arn:aws:sts::1122334455:assumed-role/ecsInstanceRole/i-00aa11bb22cc33def is not authorized to perform: ecs:RegisterContainerInstance on resource: arn:aws:ecs:us-east-1:1122334455:cluster/exampleCluster . status code: 400, request id: 0a123456-7899-10101-a987-6543210deff
2019-06-29T16:10:09Z [ERROR] 再登録エラー: AccessDeniedException: User: arn:aws:sts::1122334455:assumed-role/ecsInstanceRole/i-0052b2e858b1891ef is not authorized to perform: ecs:RegisterContainerInstance on resource: arn:aws:ecs:us-east-1:1122334455:cluster/exampleCluster status code: 400, request id: 0a123456-7899-10101-a987-123456pqrs
これらのエラーは、IAM アクセス許可がないために発生します。これらのエラーを解決するには、「Amazon ECS コンテナインスタンスの IAM ロールの検証の手順を確認します。